続けて、文字を1文字ずつ表示させる関数「typewriter()」を自作します。 指定した文字数だけ文字を取り出すメソッド「substring」と変数(n)を利用して、関数「typewriter()」が呼び出されるごとに、表示される文字が1文字ずつ増えていくような関数を作成してください。 また、この関数内では、変数(n)が文字数(mn)と同じになった場合に、変数(n)をリセットするためのif文を用意しておきます。 |
<SCRIPT language="JavaScript"> <!-- message = "HP素材の配布を開始しました!"; mn =message.length; n = 0;
function typewriter(){ document.form1.tbox1.value = message.substring(0,n)+"_"; if(n==mn){n=0} else{n=n+1} } // --> </SCRIPT> |
- テキストボックスに文字を表示させるには、前回と同様に「document.(フォーム名).(テキストボックス名).value =(表示させる文字)」と記述します。
- ここでは、文字を1文字ずつ表示させるために、(表示させる文字)を「message.substring(0,n)」としています。なお、substringの書式は「substring(開始位置、終了位置+1)」となります。また、キーボードから文字を入力しているように見せるために、アンダーバーの表示を最後に追加しています(+"_"の部分)
- if文では、次回に自作関数「typewriter()」が呼び出されたとき、前回よりも1文字多く表示させるように、変数(n)に1を加えています。ただし、n=mnであった場合は、「n=0」と変数(n)をリセットします。
|